package com.jt.exception;


import com.jt.vo.SysResult;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

//全局异常处理,内部依然采用环绕通知的方式
//异常处理后返回JSON串.
//该全局异常处理机制，捕获controller层的异常(其他层向上抛出异常).
@RestControllerAdvice
public class MyException {
    /*
    * 业务通知：如果后端报错，应该及时提示前端用户，返回统一的对象
    *           SysResult对象，status=201/msg="xxx失败"
    * 注解说明：
    *    @ExceptionHandler(value = RuntimeException.class)
    *    当遇到某种异常时，全局异常处理机制有效！
    *
    * */
    @ExceptionHandler(value = RuntimeException.class)
    public Object exception(Exception e){
        //1.应该打印异常信息
        e.printStackTrace();
        //2.返回特定的响应数据
        return SysResult.fail();
    }




}
